Storage medium storing game program, game apparatus, and game controlling method for changing game parameters based on game progress

ABSTRACT

A game apparatus includes a CPU, and when a virtual game is started, the CPU generates game image data and displays a corresponding game screen on a monitor. In the game screen, an operating instruction describing operation procedure is displayed and contents of the instruction changes according to a progress of the game. For example, as the game advances, an operating instruction including how to perform a new operation is displayed when a player object learns a new attack, or when a level (experience) of the player object increases or an operation level of the player increases. However, if the virtual game has not been played for a relatively long period of time, the operating instruction is displayed regardless of the progress of the game.

CROSS REFERENCE OF RELATED APPLICATION

The disclosure of Japanese Patent Application No. 2009-119742 isincorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a storage media storing a game program,game apparatuses, and game controlling methods. More specifically, thepresent invention relates to a storage medium storing a game program, agame apparatus, and a game controlling method for changing gameparameters regarding a player or a player object according to a progressof the game.

2. Description of the Related Art

One example of the related art is disclosed in Japanese PatentApplication Laid-Open No. 08-16348 [G06F 3/14] (Document 1) laid-open onJan. 19, 1996. The information processor according to Document 1 startsa process of displaying a help message when a given period of time (forexample, 5 seconds) has lapsed since a user last performed an inputoperation. Pieces of help message data respectively corresponding to aplurality of help messages are each set with a display control flagindicating Show “1” or Hide “0”, and the piece of help message data ofhaving a display control flag indicating “1” (Show) is read in a helpmessage display process, thereby displaying a corresponding helpmessage. However, the display control flag is selectively set accordingto the user's proficiency level (beginner, intermediate, or advanced),and the proficiency level is set by the user.

A different example of the related art is disclosed in Japanese PatentApplication Laid-Open No. 07-284034 [H04N 5/445] (Document 2) laid-openon Oct. 27, 1995. The help information presenting device according toDocument 2 stores a number of times of operation according to a keyoperation by a viewer as operation history information, and judges theviewer's proficiency level for operation control based on the storedoperation history information. Based on the result of the judgment, thehelp message display process is executed.

However, while the information processor according to Document 1 showsor hides the help messages according to the user's proficiency level, asthe proficiency level is set by the user's selection, the setproficiency level is not necessarily correct. In other words, thedisplayed help messages are not exactly appropriate.

In this respect, the help information presenting device according toDocument 2 judges the viewer's proficiency level for operation controlbased on the operation history information regarding the number of timesof operation according to the key operation. In other words, a degree ofexperience/inexperience is determined based on a number of times ofoperation, and in turn judged as the proficiency level. However, as theproficiency level is judged based on the number of times of operation,when the help information presenting device according to Document 2 isapplied for a game apparatus, for example, and if the proficiency levelis set to increase with a relatively small number of times of operationin order to accommodate an advanced game user, advanced help messagescan be adversely displayed for a beginner game user when stillinexperienced. On the other hand, if the proficiency level is set toincrease with a relatively large number of times of operation in orderto accommodate the beginner game user, help messages for operations thatthe advanced game user have already learned are adversely displayed, andthis can be annoying for the advanced game user. In other words, theproblem that the displayed help messages are not exactly appropriatealso applies to Document 2.

SUMMARY OF THE INVENTION

Therefore it is a primary object of the present invention to provide anovel storage medium storing a game program, a novel game apparatus, anda novel game controlling method.

Further, another object of the present invention is to provide a storagemedium storing a game program, a game apparatus, and a game controllingmethod, capable of presenting a necessary operating instruction whenneeded.

The present invention employs following features in order to solve theabove-described problems. It should be noted that reference numerals andthe supplements inside the parentheses show one example of acorresponding relationship with the embodiments described later for easyunderstanding of the present invention, and do not limit the presentinvention.

A first aspect of the invention is a storage medium storing a gameprogram for a game apparatus that is provided with an operatinginstruction data storage means for storing operating instruction datafor displaying an operating instruction for a virtual game on a displaymeans, and that outputs a game screen of the virtual game to the displaymeans, the game program makes a computer of the game apparatus tofunction as: a game data storage means that stores game data includingat least data relating to progress of the virtual game in a storagemedium; a timing determination means that determines whether or not itis time to display the operating instruction on the display means; adisplay determination means that, when it is determined to be the timeto display the operating instruction by the timing determination means,determines whether or not to display the operating instruction based onthe game data stored in the game data storage means; and an output meansthat, when it is determined to display the operating instruction by thedisplay determination means, outputs the operating instruction datacorresponding to the operating instruction to the display means.

In the first aspect of the invention, the game apparatus (12) isprovided with the operating instruction data storage means (42 e, 46)for storing the operating instruction data for displaying the operatinginstruction for the virtual game on the display means (34), and outputsthe game screen (100) of the virtual game to the display means. The gameprogram makes the computer of this game apparatus to function as thegame data storage means (40, S7), the timing determination means (40),the display determination means (40, S35, S41, S45, S49), and the outputmeans (40, S11). The game data storage means stores the game dataincluding at least the data relating to the progress of the virtual gamein a storage medium (42 e, 46). The timing determination meansdetermines whether or not it is time to display the operatinginstruction on the display means. When it is determined to be the timeto display the operating instruction by the timing determination means,the display determination means determines whether or not to display theoperating instruction based on the game data stored in the game datastorage means. In other words, the operating instruction is displayedaccording to at least the progress of the virtual game. When it isdetermined to display the operating instruction by the displaydetermination means, the output means outputs the operating instructiondata corresponding to the operating instruction to the display means.Thus, the operating instruction is displayed on the display means.

According to the first aspect of the invention, as the operatinginstruction is displayed according to at least the progress of thevirtual game, it is possible to display an operating instruction that isnecessary when needed.

A second aspect of the invention is dependent on the first aspect of theinvention, and the progress of the virtual game includes a number ofgame stages that have been cleared.

In the second aspect of the invention, the progress of the virtual gameincludes the number of the game stages (or phases or chapters) that havebeen cleared by the player, for example.

According to the second aspect of the invention, as the operatinginstruction is displayed according to the number of the cleared gamestages, it is possible to display an adequate operating instructiondepending on a degree of proficiency of the player.

A third aspect of the invention is dependent on the first or the secondaspect of the invention, and the progress of the virtual game includestotal play time of the virtual game.

In the third aspect of the invention, the progress of the virtual gameincludes the total play time of the virtual game. Generally, when thegame has been played for an extended period of time, the degree ofproficiency of the player and the degree of the progress of the virtualgame are advanced.

According to the third aspect of the invention, as the operatinginstruction is displayed according to the total play time of the virtualgame, similarly to the second aspect of the invention, it is possible todisplay an adequate operating instruction depending on the degree ofproficiency of the player and the degree of the progress of the virtualgame.

A fourth aspect of the invention is dependent on one of the first to thethird aspects of the invention, and the operating instruction datastorage means stores a plurality of contents for a single type ofoperating instruction that are different according to an operation levelof a player, the computer is further functioned as an operationdetection means that detects an operation by the player and an operationlevel determination means that determines the operation level of theplayer based on the detection result by the operation detection means,and the output means outputs the operating instruction data for theoperating instruction of a content according to the operation leveldetermined by the operation level determination means.

In the fourth aspect of the invention, the operating instruction datastorage means stores the plurality of contents for the single type ofthe operating instruction that are different according to the player'soperation level. In other words, the operating instruction according tothe operation level is stored. The operation detection means (40, S77)detects the player's operation. The operation level determination means(40, S51, S53) determines the player's operation level based on thedetected result by the operation detection means. The output meansoutputs the operating instruction data for the operating instruction ofthe content according to the operation level determined by the operationlevel determination means.

According to the fourth aspect of the invention, as the operatinginstruction of the content according to the player's operation level isdisplayed, it is possible to display the operating instruction thatcorresponds to the player's condition in addition to the progress of thevirtual game.

A fifth aspect of the invention is dependent on the fourth aspect of theinvention, and the operation level is a success rate of the operation.

In the fifth aspect of the invention, the operation level is the successrate of the operation. For example, the player's operation level isdetermined based on the proportion of a number of correct operations forthe total number of times of operation.

According to the fifth aspect of the invention, similarly to the fourthaspect of the invention, it is possible to display the operatinginstruction that corresponds to the player's condition in addition tothe progress of the virtual game.

A sixth aspect of the invention is dependent on the fourth aspect of theinvention, and the operation level is a time period taken for theoperation.

In the sixth aspect of the invention, the operation level is the timeperiod taken for the operation. For example, the operation level isdetermined based on the time period from time when the player is allowedto perform the operation to time when the player actually perform theoperation.

According to the sixth aspect of the invention, similarly to the fourthaspect of the invention, it is possible to display the operatinginstruction that corresponds to the player's condition in addition tothe progress of the virtual game.

A seventh aspect of the invention is dependent on one of the fourth tothe sixth aspects of the invention, and when the operating instructionis determined to be not displayed by the display determination means,the computer is further functioned as a time counting means thatmeasures a time period during which no operation by the player has beendetected by the operation detection means, and when the time periodmeasured by the time counting means is over a given period of time, theoutput means outputs the operating instruction data that corresponds tothe operating instruction that has been determined not to be displayedby the display determination means to the display means.

In the seventh aspect of the invention, when it is determined not todisplay the operating instruction by the display determination means(“YES” in S69), the time counting means (40, 502 k, S89) measures thetime period during which no operation by the player has been detected bythe operation detection means. The output means, when the time periodmeasured by the time counting means is over the given period of time(“YES” in S89), outputs the operating instruction data that correspondsto the operating instruction that has been determined not to bedisplayed by the display determination means to the display means.

According to the seventh aspect of the invention, when there has been nooperation by the player for the given period of time or longer, theoperating instruction that has once been determined not to be displayedis displayed, and therefore, it is possible to adequately display theoperating instruction as needed such as a case when the operationprocedure cannot be found.

An eighth aspect of the invention is dependent on one of the first tothe seventh aspects of the invention, and when a new type of operationbecomes available in the virtual game, the timing determination meansdetermines that it is time to display an operating instruction for thenew operation on the display means.

In the eighth aspect of the invention, when the new type of operationbecomes available in the virtual game, the timing determination meansdetermines that it is time to display the operating instruction for thenew operation on the display means.

According to the eighth aspect of the invention, when the new type ofoperation is available, an instruction for the operation is displayed,and therefore, the player may learn that the new type of operationbecomes available and how to perform the operation.

A ninth aspect of the invention is dependent on one of the first to theeighth aspects of the invention, and when a time period from a last playto a current play of the virtual game is over a predetermined timeperiod, the display determination means determines to display theoperating instruction regardless of the game data stored in the gamedata storage means.

In the ninth aspect of the invention, and when the time period from thelast play to the current play of the virtual game is over thepredetermined time period (“YES” in S35), the display determinationmeans determines to display the operating instruction regardless of thegame data stored in the game data storage means (S37).

According to the ninth aspect of the invention, when the time periodduring which the game has not been played is relatively long, theoperating instruction is displayed regardless of the game data, andtherefore, it is possible to prevent a detrimental effect in the playfrom occurring even if the operation procedure has been forgotten.

A tenth aspect of the invention is a game apparatus that is providedwith an operating instruction data storage means for storing operatinginstruction data for displaying an operating instruction for a virtualgame on a display means, and that outputs a game screen of the virtualgame to the display means, the apparatus having: a game data storagemeans that stores game data including at least data relating to progressof the virtual game in the storage medium; a timing determination meansthat determines whether or not it is time to display the operatinginstruction on the display means; a display determination means that,when it is determined to be the time to display the operatinginstruction by the timing determination means, determines whether or notto display the operating instruction based on the game data stored inthe game data storage means; and an output means that, when it isdetermined to display the operating instruction by the displaydetermination means, outputs operating instruction data corresponding tothe operating instruction to the display means.

According to the tenth aspect of the invention, similarly to the firstaspect of the invention, it is possible to display an operatinginstruction that is necessary when needed.

An eleventh aspect of the invention is a game controlling method for agame apparatus that is provided with an operating instruction datastorage means for storing operating instruction data for displaying anoperating instruction for a virtual game on a display means and a gamedata storage means that stores game data including at least datarelating to progress of the virtual game in a storage medium, and thatoutputs a game screen of the virtual game to the display means, themethod including the steps of: (a) determining whether or not it is timeto display the operating instruction on the display means; (b)determining, when it is determined to be the time to display theoperating instruction by the step (a), whether or not to display theoperating instruction based on the game data stored in the game datastorage means; and (c) outputting, when it is determined to display theoperating instruction by the step (b), operating instruction datacorresponding to the operating instruction to the display means.

According to the eleventh aspect of the invention, similarly to thefirst aspect of the invention, it is possible to display an operatinginstruction that is necessary when needed.

The above described objects and other objects, features, and advantagesof the present invention will become more apparent from the followingdetailed description of preferred embodiments when taken in conjunctionwith the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is an illustrative view showing one embodiment of a game systemaccording to the present invention;

FIG. 2 is a block diagram showing an electrical configuration of thegame system shown in FIG. 1;

FIG. 3 is an illustrative view for explaining an external appearance ofa controller shown in FIG. 1;

FIG. 4 is a block diagram showing an electrical configuration of thecontroller shown in FIG. 3;

FIG. 5 is an illustrative view for schematically explaining how avirtual game is played using the controller shown in FIG. 1;

FIG. 6 is an illustrative view for explaining a view angle of a thecontroller and a marker shown in FIG. 1;

FIG. 7 is an illustrative view showing one example of a imaged imagecontaining an object image;

FIG. 8 is an illustrative view showing an example of a game screendisplayed on a monitor shown in FIG. 1;

FIG. 9 is an illustrative view showing one example of a memory map of amain memory shown in FIG. 2;

FIG. 10 is an illustrative view showing one example of operation datashown in FIG. 9;

FIG. 11 is a flowchart showing an entire process of a CPU shown in FIG.2;

FIG. 12 is a flowchart showing a part of a control process of displayingan operating instruction of the CPU shown in FIG. 2;

FIG. 13 is a flowchart showing a second part of the control process ofdisplaying the operating instruction of the CPU shown in FIG. 2 thatfollows the process shown in FIG. 12;

FIG. 14 is a flowchart showing a third part of the control process ofdisplaying the operating instruction of the CPU shown in FIG. 2 thatfollows the process shown in FIG. 13;

FIG. 15 is a flowchart showing a fourth part of the control process ofdisplaying the operating instruction of the CPU shown in FIG. 2 thatfollows the process shown in FIG. 14; and

FIG. 16 is a flowchart showing a fifth part of the control process ofdisplaying the operating instruction of the CPU shown in FIG. 2 thatfollows the process shown in FIG. 15.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

Referring to FIG. 1, a game system 10 of one embodiment of the presentinvention includes a video game apparatus (hereinafter referred to as a“game apparatus”) 12 functioning as an information processing apparatusand a controller 22. Although illustration is omitted, the gameapparatus 12 of this embodiment is designed such that it can beconnected to four controllers 22 at the maximum. Furthermore, the gameapparatus 12 and the respective controllers 22 are connected by radio.The wireless communication is executed according to a Bluetooth(registered trademark) standard, for example, but may be executed byother standards such as infrared rays, a wireless LAN. In addition, itmay be connected by a wire.

The game apparatus 12 includes a roughly rectangular parallelepipedhousing 14, and the housing 14 is furnished with a disk slot 16 on afront surface. An optical disk 18 as one example of an informationstorage medium storing game program, etc. is inserted from the disk slot16 to be loaded into a disk drive 54 (see FIG. 2) within the housing 14.Although illustration is omitted, around the disk slot 16, an LED and alight guide plate are arranged such that the LED of the disk slot 16 canlight on or light on and off in accordance with various processing.

Furthermore, on the front surface of the housing 14 of the gameapparatus 12, a power button 20 a and a reset button 20 b are providedat the upper part thereof, and an eject button 20 c is provided belowthem. In addition, a connector cover for external memory card 28 isprovided between the reset button 20 b and the eject button 20 c, and inthe vicinity of the disk slot 16. Inside the connector cover forexternal memory card 28, an external connector for memory card 62 (seeFIG. 2) is provided, through which an external memory card (hereinaftersimply referred to as a “memory card”) not shown is inserted. The memorycard is employed for loading the game program, etc. read from theoptical disk 18 to temporarily store it, storing (saving) game data(result data or proceeding data of the game) of the game played by meansof the game system 10, and so forth. It should be noted that storing thegame data described above may be performed on an internal memory, suchas a flash memory 44 (see FIG. 2) inside the game apparatus 12 in placeof the memory card. Also, the memory card may be utilized as a backupmemory of the internal memory. In addition, in the game apparatus 12,other application except for the game may be executed, and in such acase, data of the other application can be stored in the memory card.

Here, a general-purpose SD card can be employed as a memory card, butother general-purpose memory cards, such as memory sticks, multimediacards (registered trademark) can be employed.

Although omitted in FIG. 1, the game apparatus 12 has an AV cableconnector 58 (FIG. 2) on the rear surface of the housing 14, and byutilizing the AV cable connector 58, a monitor 34 and a speaker 34 a areconnected to the game apparatus 12 through an AV cable 32 a. The monitor34 and the speaker 34 a typically are a color television receiver, andthrough the AV cable 32 a, a video signal from the game apparatus 12 isinput to a video input terminal of the color television, and a soundsignal is input to a sound input terminal. Accordingly, a game image ofa three-dimensional (3D) video game, for example, is displayed on thescreen of the color television (monitor) 34, and stereo game sound, suchas a game music, a sound effect, etc. is output from the right and leftspeakers 34 a. Around the monitor 34 (on the top side of the monitor 34,in this embodiment), a marker unit 34 b including two infrared ray LEDs(markers) 340 m and 340 n is provided. The marker unit 34 b is connectedto the game apparatus 12 through a power source cable 32 b. Accordingly,the marker unit 34 b is supplied with power from the game apparatus 12.Thus, the markers 340 m and 340 n emit lights toward front of themonitor 34.

Furthermore, the power of the game apparatus 12 is applied by means of ageneral AC adapter (not illustrated). The AC adapter is inserted into astandard wall socket for home use, and the game apparatus 12 transformsthe house current (commercial power supply) to a low DC voltage signalsuitable for driving. In another embodiment, a battery may be utilizedas a power supply.

In the game system 10, a user or a player turns the power of the gameapparatus 12 on for playing the game (or applications other than thegame). Then, the user selects an appropriate optical disk 18 storing aprogram of a video game (or other applications the player wants toplay), and loads the optical disk 18 into the disk drive 54 of the gameapparatus 12. In response thereto, the game apparatus 12 starts toexecute a video game or other applications on the basis of the programrecorded in the optical disk 18. The user operates the controller 22 inorder to apply an input to the game apparatus 12. For example, byoperating any one of the input means 26, a game or other application isstarted. Besides the operation of the input means 26, by moving thecontroller 22 itself, it is possible to move a moving image object(player object) in different directions or change a perspective of theuser (camera position) in a 3-dimensional game world.

Here, programs of the video game and other applications may be stored(installed) in an internal memory (flash memory 42(see FIG. 2)) of thegame apparatus 12 so as to be executed from the internal memory. In sucha case, programs stored in a storage medium like an optical disk 18 maybe installed onto the internal memory, or the downloaded program may beinstalled onto the internal memory.

FIG. 2 is a block diagram showing an electric configuration of the videogame system 10 in FIG. 1 embodiment. Although illustration is omitted,the respective components within the housing 14 are contained on aprinted board. As shown in FIG. 2, the game apparatus 12 has a CPU 40.The CPU 40 functions as a game processor. The CPU 40 is connected to asystem LSI 42. The system LSI 42 is connected with an external mainmemory 46, a ROM/RTC 48, a disk drive 54, and an AV IC 56.

The external main memory 46 is utilized as a work area and a buffer areaof the CPU 40 by storing programs like a game program, etc., variousdata. The ROM/RTC 48, the so-called boot ROM, is incorporated with aprogram for activating the game apparatus 12, and provided with a timecircuit for counting a time. The disk drive 54 reads a program, imagedata, sound data, etc. from the optical disk 18, and writes them in aninternal main memory 42 e described later or the external main memory 46under the control of the CPU 40.

The system LSI 42 is provided with an input-output processor 42 a, a GPU(Graphics Processor Unit) 42 b, a DSP (Digital Signal Processor) 42 c, aVRAM 42 d and an internal main memory 42 e. These are connected witheach other by internal buses although illustration is omitted. Theinput-output processor (I/O processor) 42 a executes transmission andreception of data, downloads of data, and so forth. A detaileddescription is made later as to transmission and reception and downloadof the data.

The GPU 42 b is made up of a part of a rendering means, and receives agraphics command (construction command) from the CPU 40 to generate gameimage data according to the command. Additionally, the CPU 40 applies animage generating program required for generating game image data to theGPU 42 b in addition to the graphics command.

Although illustration is omitted, the GPU 42 b is connected with theVRAM 42 d as described above. The GPU 42 b accesses the VRAM 42 d toacquire the data (image data: data such as polygon data, texture data,etc.) required to execute the construction command. Additionally, theCPU 40 writes the image data required for drawing to the VRAM 42 d viathe GPU 42 b. The GPU 42 b accesses the VRAM 42 d to create game imagedata for drawing.

In this embodiment, a description is made on a case that the GPU 42 bgenerates game image data, but in a case of executing an arbitraryapplication except for the game application, the GPU 42 b generatesimage data as to the arbitrary application.

Furthermore, the DSP 42 c functions as an audio processor, and generatesaudio data corresponding to a sound, a voice, music, or the like bymeans of the sound data and the sound wave (tone) data stored in theinternal main memory 42 e and the external main memory 46.

The game image data and audio data generated as described above are readby the AV IC 56, and output to the monitor 34 and the speaker 34 a viathe AV connector 58. Accordingly, a game screen is displayed on themonitor 34, and a sound (music) necessary for the game is output fromthe speaker 34 a.

Furthermore, the input-output processor 42 a is connected with a flashmemory 44, a radio communication module 50, a radio controller module52, an expansion connector 60 and a connector for memory card 62. Theradio communication module 50 is connected with an antenna 50 a, and theradio controller module 52 is connected with an antenna 52 a.

Although illustration is omitted, the input-output processor 42 a cancommunicate with other game apparatuses and various servers to beconnected to a network via the radio communication module 50. It shouldbe noted that it is possible to directly communicate with other gameapparatuses without going through the network. The input-outputprocessor 42 a periodically accesses the flash memory 44 to detect thepresence or absence of data (referred to as transmission data) requiredto be transmitted to a network, and, in a case that the transmissiondata is present, transmits it to the network via the radio communicationmodule 50 and the antenna 50 a. Furthermore, the input-output processor42 a receives data (referred to as reception data) transmitted fromother game apparatuses via the network, the antenna 50 a and the radiocommunication module 50, and stores the reception data in the flashmemory 44. If the reception data does not satisfy a predeterminedcondition, the reception data is abandoned as it is. In addition, theinput-output processor 42 a receives data (download data) downloadedfrom the download server via the network, the antenna 50 a and the radiocommunication module 50, and stores the download data in the flashmemory 44.

Furthermore, the input-output processor 42 a receives input datatransmitted from the controller 22 via the antenna 52 a and the radiocontroller module 52, and (temporarily) stores it in the buffer area ofthe internal main memory 42 e or the external main memory 46. The inputdata is erased from the buffer area after being utilized in theprocessing by the CPU 40 (game processing, for example).

In this embodiment, as described above, the radio controller module 52performs communication with the controller 22 in accordance withBluetooth standards.

In addition, the input-output processor 42 a is connected with theexpansion connector 60 and the connector for memory card 62. Theexpansion connector 60 is a connector for interfaces, such as USB, SCSI,etc., and can be connected with medium such as an external storage, andperipheral devices such as another controller. Furthermore, theexpansion connector 60 is connected with a cable LAN adaptor, and canutilize the cable LAN in place of the radio communication module 50. Theconnector for memory card 62 can be connected with an external storagelike a memory card. Thus, for example, the input-output processor 42 aaccesses the external storage via the expansion connector 60 and theconnector for memory card 62 to store and read the data.

Although a detailed description is omitted, as shown in FIG. 1, the gameapparatus 12 (housing 14) is furnished with the power button 20 a, thereset button 20 b, and the eject button 20 c. The power button 20 a isconnected to the system LSI 42. When the power button 20 a is turned on,the system LSI 42 set in a mode of a normal energized state in which therespective components of the game apparatus 12 are supplied with powerthrough an AC adapter not shown (referred to as “normal mode”). On theother hand, when the power button 20 a is turned off, the system LSI 42is set to a mode in which only a part of the components of the gameapparatus 12 is supplied with power, and the power consumption isreduced to minimum (hereinafter referred to as a “standby mode”).

In this embodiment, in a case that the standby mode is set, the systemLSI 42 issues an instruction to stop supplying the power to thecomponents except for the input-output processor 42 a, the flash memory44, the external main memory 46, the ROM/RTC 48 and the radiocommunication module 50, and the radio controller module 52.Accordingly, in this embodiment, in the standby mode, the CPU 40 neverperforms an application.

Although the system LSI 42 is supplied with power even in the standbymode, generation of clocks to the GPU 42 b, the DSP42 c and the VRAM 42d are stopped so as not to be driven, realizing reduction in powerconsumption.

Although illustration is omitted, inside the housing 14 of the gameapparatus 12, a fan is provided for excluding heat of the IC, such asthe CPU 40, the system LSI 42, etc. to outside. In the standby mode, thefan is also stopped.

However, in a case that utilizing the standby mode is not desired, bymaking the standby mode unusable, when the power button 20 a is turnedoff, the power supply to all the circuit components are completelystopped.

Furthermore, switching between the normal mode and the standby mode canbe performed by turning on and off the power switch 26 h of thecontroller 22 by remote control. If the remote control is not performed,setting is made such that the power supply to the radio controllermodule 52 a is not performed in the standby mode.

The reset button 20 b is also connected with the system LSI 42. When thereset button 20 b is pushed, the system LSI 42 restarts the activationprogram of the game apparatus 12. The eject button 20 c is connected tothe disk drive 54. When the eject button 20 c is pushed, the opticaldisk 18 is removed from the disk drive 54.

Each of FIG. 3(A) to FIG. 3(E) shows one example of an externalappearance of the controller 22. FIG. 3(A) shows a front end surface ofthe controller 22, FIG. 3(B) shows a top surface of the controller 22,FIG. 3(C) shows a right side surface of the controller 22, FIG. 3(D)shows a lower surface of the controller 22, and FIG. 3(E) shows a backend surface of the controller 22.

Referring to FIG. 3(A) and FIG. 3(E), the controller 22 has a housing 22a formed by plastic molding, for example. The housing 22 a is formedinto an approximately rectangular parallelepiped shape and has a sizesmall enough to be held by one hand of a user. The housing 22 a(controller 22) is provided with the input means (a plurality of buttonsor switches) 26. Specifically, as shown in FIG. 3(B), on an uppersurface of the housing 22 a, there are provided a cross key 26 a, a 1button 26 b, a 2 button 26 c, an A button 26 d, a − button 26 e, a HOMEbutton 26 f, a + button 26 g and a power switch 26 h. Moreover, as shownin FIG. 3(C) and FIG. 3(D), an inclined surface is formed on a lowersurface of the housing 22 a, and a B-trigger switch 26 i is formed onthe inclined surface.

The cross key 26 a is a four directional push switch, including fourdirections of front (or upper), back (or lower), right and leftoperation parts. By operating any one of the operation parts, it ispossible to instruct a moving direction of a character or an object(player character or player object) that is operable by a player,instruct the moving direction of a cursor, or instruct the directionmerely.

The 1 button 26 b and the 2 button 26 c are respectively push buttonswitches, and are used for a game operation, such as adjusting aviewpoint position and a viewpoint direction on displaying the 3D gameimage, i.e. a position and an image angle of a virtual camera.Alternatively, the 1 button 26 b and the 2 button 26 c can be used forthe same operation as that of the A-button 26 d and the B-trigger switch26 i or an auxiliary operation.

The A-button switch 26 d is the push button switch, and is used forcausing the player character or the player object to take an actionother than a directional instruction, specifically arbitrary actionssuch as hitting (punching), throwing, grasping (acquiring), riding, andjumping, etc. For example, in an action game, it is possible to give aninstruction to jump, punch, move a weapon, and so forth. Also, in a rollplaying game (RPG) and a simulation RPG, it is possible to instruct toacquire an item, select and determine the weapon and command, and soforth. Furthermore, in a case that the controller 22 is used as apointing device, the A-button switch 26 d is used to instruct a decisionof an icon or a button image instructed by a pointer (instruction image)on the game screen. For example, when the icon or the button image isdecided, an instruction or a command set in advance correspondingthereto can be input.

The − button 26 e, the HOME button 26 f, the + button 26 g, and thepower supply switch 26 h are also push button switches. The − button 26e is used for selecting a game mode. The HOME button 26 f is used fordisplaying a game menu (menu screen). The + button 26 g is used forstarting (resuming) or pausing the game. The power supply switch 26 h isused for turning on/off a power supply of the game apparatus 12 byremote control.

In this embodiment, note that the power supply switch for turning on/offthe controller 22 itself is not provided, and the controller 22 is setat on-state by operating any one of the switches or buttons of the inputmeans. 26 of the controller 22, and when not operated for a certainperiod of time (30 seconds, for example) or more, the controller 22 isautomatically set at off-state.

The B-trigger switch 26 i is also the push button switch, and is mainlyused for inputting a trigger such as shooting, and designating aposition selected by the controller 22. In a case that the B-triggerswitch 26 i is continued to be pushed, it is possible to make movementsand parameters of the player object constant. In a fixed case, theB-trigger switch 26 i functions in the same way as a normal B-button,and is used for canceling the action and the command determined by theA-button 26 d.

As shown in FIG. 3(E), an external expansion connector 22 b is providedon a back end surface of the housing 22 a, and as shown in FIG. 3(B),and an indicator 22 c is provided on the top surface and on the side ofthe back end surface of the housing 22 a. The external expansionconnector 22 b is utilized for connecting another expansion controllernot shown other than the controller 22. The indicator 22 c is made up offour LEDs, for example, and shows identification information (controllernumber) of the lighting controller 22 by lighting any one of the fourLEDs, and shows the remaining amount of power of the controller 22depending on the number of LEDs to be emitted.

In addition, the controller 22 has an imaged information arithmeticsection 80 (see FIG. 4), and as shown in FIG. 3(A), on the front endsurface of the housing 22 a, light incident opening 22 d of the imagedinformation arithmetic section 80 is provided. Furthermore, thecontroller 22 has a speaker 86 (see FIG. 4), and the speaker 86 isprovided inside the housing 22 a at the position corresponding to asound release hole 22 e between the 1 button 26 b and the HOME button 26f on the tope surface of the housing 22 a as shown in FIG. 3(B).

Note that as shown in FIG. 3(A) to FIG. 3(E), the shape of thecontroller 22 and the shape, number and setting position of each inputmeans 26 are simply examples, and needless to say, even if they aresuitably modified, the present invention can be realized.

FIG. 4 is a block diagram showing an electric configuration of thecontroller 22. Referring to FIG. 4, the controller 22 includes aprocessor 70, and the processor 70 is connected with the externalexpansion connector 22 b, the input means 26, a memory 72, anacceleration sensor 74, a radio module 76, the imaged informationarithmetic section 80, an LED 82 (the indicator 22 c), an vibrator 84, aspeaker 86, and a power supply circuit 88 by an internal bus (notshown). Moreover, an antenna 78 is connected to the radio module 76.

For simplicity, although omitted in FIG. 4, the indicator 22 c is madeup of the four LEDs 82 as described above.

The processor 70 is in charge of an overall control of the controller22, and transmits (inputs) information (input information) input by theinput means 26, the acceleration sensor 74, and the imaged informationarithmetic section 80 as input data to the game apparatus 12 via theradio module 76 and the antenna 78. At this time, the processor 70 usesthe memory 72 as a working area or a buffer area. An operation signal(operation data) from the aforementioned input means 26 (26 a to 26 i)is input to the processor 70, and the processor 70 stores the operationdata once in the memory 72.

Moreover, the acceleration sensor 74 detects each acceleration of thecontroller 22 in directions of three axes of vertical direction (y-axialdirection), lateral direction (x-axial direction), and forward andrearward directions (z-axial direction). The acceleration sensor 74 istypically an acceleration sensor of an electrostatic capacity type, butthe acceleration sensor of other type may also be used.

For example, the acceleration sensor 74 detects the accelerations (ax,ay, and az) in each direction of x-axis, y-axis, z-axis for each firstpredetermined time, and inputs the data of the acceleration(acceleration data) thus detected in the processor 70. For example, theacceleration sensor 74 detects the acceleration in each direction of theaxes in a range from −2.0 g to 2.0 g (g indicates a gravitationalacceleration. The same thing can be said hereafter.) The processor 70detects the acceleration data given from the acceleration sensor 74 foreach second predetermined time, and stores it in the memory 72 once.

The processor 70 creates input data including at least one of theoperation data, acceleration data and marker coordinate data asdescribed later, and transmits the input data thus created to the gameapparatus 12 for each third predetermined time (5 msec, for example).

In this embodiment, although omitted in FIG. 3(A) to FIG. 3(E), theacceleration sensor 74 is provided inside the housing 22 a and in thevicinity of the circuit board where the cross key 26 a is arranged.

The radio module 76 modulates a carrier of a predetermined frequency bythe input data, by using a technique of Bluetooth, for example, andemits its weak radio wave signal from the antenna 78. Namely, the inputdata is modulated to the weak radio wave signal by the radio module 76and transmitted from the antenna 78 (controller 22). The weak radio wavesignal thus transmitted is received by the radio controller module 52provided to the aforementioned game apparatus 12. The weak radio wavethus received is subjected to demodulating and decoding processing. Thismakes it possible for the game apparatus 12 (CPU 40) to acquire theinput data from the controller 22. Then, the CPU 40 performs processingof the application (game processing), following the acquired input dataand the application program (game program).

In addition, as described above, the controller 22 is provided with theimaged information arithmetic section 80. The imaged informationarithmetic section 80 is made up of an infrared rays filter 80 a, a lens80 b, an imager 80 c, and an image processing circuit 80 d. The infraredrays filter 80 a passes only infrared rays from the light incident fromthe front of the controller 22. As described above, the markers 340 mand 340 n placed near (around) the display screen of the monitor 34 areinfrared LEDs for outputting infrared lights forward the monitor 34.Accordingly, by providing the infrared rays filter 80 a, it is possibleto image the image of the markers 340 m and 340 n more accurately. Thelens 80 b condenses the infrared rays passing thorough the infrared raysfilter 80 a to emit them to the imager 80 c. The imager 80 c is a solidimager, such as a CMOS sensor and a CCD, for example, and images theinfrared rays condensed by the lens 80 b. Accordingly, the imager 80 cimages only the infrared rays passing through the infrared rays filter80 a to generate image data. Hereafter, the image imaged by the imager80 c is called an “imaged image”. The image data generated by the imager80 c is processed by the image processing circuit 80 d. The imageprocessing circuit 80 d calculates a position of an object to be imaged(markers 340 m and 340 n) within the imaged image, and outputs eachcoordinate value indicative of the position to the processor 70 asimaged data for each fourth predetermined time. It should be noted thata description of the process in the image processing circuit 80 d ismade later.

FIG. 5 is an illustrative view summarizing a state when a player plays agame by utilizing the controller 22. It should be noted that the same istrue for a case that another application is executed as well as a gameplaying. As shown in FIG. 5, when playing the game by means of thecontroller 22 in the video game system 10, the player holds thecontroller 22 with one hand. Strictly speaking, the player holds thecontroller 22 in a state that the front end surface (the side of theincident light opening 22 d of the light imaged by the imagedinformation arithmetic section 80) of the controller 22 is oriented tothe markers 340 m and 340 n. It should be noted that as can beunderstood from FIG. 1, the markers 340 m and 340 n are placed inparallel with the horizontal direction of the screen of the monitor 34.In this state, the player performs a game operation by changing aposition on the screen indicated by the controller 22, and changing adistance between the controller 22 and each of the markers 340 m and 340n.

FIG. 6 is a view showing viewing angles between the respective markers340 m and 340 n, and the controller 22. As shown in FIG. 6, each of themarkers 340 m and 340 n emits infrared ray within a range of a viewingangle θ1. Also, the imager 80 c of the imaged information arithmeticsection 80 can receive incident light within the range of the viewingangle θ2 taking the line of sight of the controller 22 as a center. Forexample, the viewing angle θ1 of each of the markers 340 m and 340 n is34° (half-value angle) while the viewing angle θ2 of the imager 80 c is41°. The player holds the controller 22 such that the imager 80 c isdirected and positioned so as to receive the infrared rays from themarkers 340 m and 340 n. More specifically, the player holds thecontroller 22 such that at least one of the markers 340 m and 340 nexists in the viewing angle θ2 of the imager 80 c, and the controller 22exists in at least one of the viewing angles θ1 of the marker 340 m or340 n. In this state, the controller 22 can detect at least one of themarkers 340 m and 340 n. The player can perform a game operation bychanging the position and the orientation of the controller 22 in therange satisfying the state.

If the position and the orientation of the controller 22 are out of therange, the game operation based on the position and the orientation ofthe controller 22 cannot be performed. Hereafter, the above-describedrange is called an “operable range”.

If the controller 22 is held within the operable range, an image of eachof the markers 340 m and 340 n is imaged by the imaged informationarithmetic section 80. That is, the imaged image obtained by the imager80 c includes an image (object image) of each of the markers 340 m and340 n as an object to be imaged. FIG. 7 is a view showing one example ofthe imaged image including an object image. The image processing circuit80 d calculates coordinates (marker coordinates) indicative of theposition of each of the markers 340 m and 340 n in the imaged image byutilizing the image data of the imaged image including the object image.

Since the object image appears as a high-intensity part in the imagedata of the imaged image, the image processing circuit 80 d firstdetects the high-intensity part as a candidate of the object image.Next, the image processing circuit 80 d determines whether or not thehigh-intensity part is an object image on the basis of the size of thedetected high-intensity part. The imaged image may include images otherthan the object image due to sunlight through a window and light of afluorescent lamp in the room as well as the images 340 m′ and 340 n′corresponding to the two markers 340 m and 340 n as an object image. Thedetermination processing whether or not the high-intensity part is anobject image is executed for discriminating the images 340 m′ and 340 n′of the two markers 340 m and 340 n as an object image from the imagesother than them, and accurately detecting the object image. Morespecifically, in the determination process, it is determined whether ornot the detected high-intensity part is within the size of the presetpredetermined range. Then, if the high-intensity part is within the sizeof the predetermined range, it is determined that the high-intensitypart represents the object image. On the contrary, if the high-intensitypart is not within the size of the predetermined range, it is determinedthat the high-intensity part represents the images other than the objectimage.

In addition, as to the high-intensity part which is determined torepresent the object image as a result of the above-describeddetermination processing, the image processing circuit 80 d calculatesthe position of the high-intensity part. More specifically, thebarycenter position of the high-intensity part is calculated. Here, thecoordinates of the barycenter position is called a “marker coordinate”.Also, the barycenter position can be calculated with more detailed scalethan the resolution of the imager 80 c. Now, the resolution of theimaged image imaged by the imager 80 c shall be 126×96, and thebarycenter position shall be calculated with the scale of 1024×768. Thatis, the marker coordinate is represented by the integer from (0, 0) to(1024, 768).

Additionally, the position in the imaged image shall be represented by acoordinate system (XY coordinate system) taking the upper left of theimaged image as an origin point, the downward direction as an Y-axispositive direction, and the right direction as an X-axis positivedirection.

Also, if the object image is properly detected, two high-intensity partsare determined as an object image by the determination process, andtherefore, two marker coordinates are calculated. The image processingcircuit 80 d outputs data indicative of the calculated two markercoordinates. The data of the output marker coordinates (markercoordinate data) is included in the input data by the processor 70 asdescribed above, and transmitted to the game apparatus 12.

The game apparatus 12 (CPU 40) detects the marker coordinate data fromthe received input data to thereby calculate an instructed position(instructed coordinate) by the controller 22 on the screen of themonitor 34 and a distances from the controller 22 to each of the markers340 m and 340 n on the basis of the marker coordinate data. Morespecifically, from the position of the mid point of the two markercoordinates, a position to which the controller 22 faces, that is, aninstructed position is calculated. The distance between the objectimages in the imaged image is changed depending on the distance betweenthe controller 22 and each of the markers 340 m and 340 n, andtherefore, the game apparatus 12 can grasp the distance between thecontroller 22 and each of the markers 340 m and 340 n by calculating thedistance between the two marker coordinates.

In the game system 10 as described above, when the game process isexecuted, although illustration is omitted, it is possible to play avirtual game in which objects are made to fight each other byalternately repeating offense turn and a defense turn between the playerobject and an enemy object in the battle scene. Alternatively, it ispossible to play a virtual game in which operations are always carriedout without setting the offense turn and the defense turn.

For example, in the battle scene, when the offense turn for the playerobject comes, game screens 100 as shown in FIG. 8(A) and FIG. 8(B) aredisplayed on the monitor 34. The game screens 100 are screens (operationscreens) for instructing an attack that the player object is made toperform. As shown in FIG. 8(A) and FIG. 8(B), each game screen 100 isprovided with a draw area 102 for drawing letters, pictorial figures,and symbols in the middle of the area (hereinafter referred to as“letters and such”). For the virtual game that is not turn-based, theoperation screen can be displayed at a time when a specific operation isperformed during the operation, for example. A display area 104 fordisplaying the operating instruction is provided below the draw area102. Further, four display areas 106 for displaying the letters and suchcorresponding to available types of attack are provided on left andright sides of the draw area 102, respectively.

For example, when the game screen 100 is displayed on the monitor 34,the player refers to the letters and such displayed in the display area106 and draws the letters and such that corresponds to a type of attachthat is desired to make the player object to perform using thecontroller 22 in the draw area 102. As has been described, as theinstruction position (instruction coordinates) on the screen of themonitor 34 can be specified by the controller 22, the drawing is carriedout by moving the instruction position. Although illustration isomitted, an indication image is displayed at the position designated bythe controller 22 in, the game screen 100, for example, and thus, theindication image is moved accordingly when the controller 22 is moved.Based on a trajectory of the indication image (a set of the coordinatesof the instruction position aligned in chronological order), the lettersand such drawn by the player are recognized.

It should be noted that, as a recognizing method of the letters and suchdrawn by the player, for example, a method described in Japanese PatentLaid-Open No. 2006-204344 that has been filed by the applicant of thepresent application and already published can be employed. Therecognizing method of the letters and such is not essential to thepresent invention, and therefore an explanation for this method is notgiven.

When the letters and such drawn by the player are recognized, and matchthe letters and such described in the display area 106, the type ofattack (for example, punch, kick, charge, slash with a sword and such,shoot a bullet, or a type of magic) assigned to the letters and such isdetermined. However, when the letters and such drawn by the player arerecognized but do not match the letters and such described in thedisplay area 106, it is judged that the drawing (input) is a failure.Further, a maximum length of time (for example, 30 seconds) for theplayer to draw the letters and such is set in advance, and it is alsojudged that the drawing is a failure when the letters and such are notrecognized until the maximum length of time lapses after the game screen100 is displayed on the monitor 34.

Here, in the display area 104 in the game screen 100 shown in FIG. 8(A),an image that indicates a motion of swinging the controller 22 is drawnas an operation procedure to “shoot a magic”, and an image thatindicates an operation of the − button 26 e provided for the controller22 is drawn as an operation procedure to “cancel” the inputted lettersand such.

On the other hand, in the display area 104 in the game screen 100 shownin FIG. 8(B), an image and a text that indicate a motion of keepingpressing the A button 26 d provided for the controller 22 is drawn(described) as an operation procedure to “continue” the attack (in thiscase, shoot a magic), and the image that indicates the motion ofswinging the controller 22 is drawn as the operation procedure to “shoota magic”.

Specifically, in the game screen 100 shown in FIG. 8(B), instead of abasic operation (introductory operation) such as to “cancel”, anexplanation for a new operation (advanced operation) such as tocontinuously attack is displayed.

The content of the operating instruction to be displayed change in thismanner, for example, when the player acquires an ability for a newoperation (input), when the level (experience) of the player objectincreases, and when the player's level of the operation (operationlevel) increases as the virtual game is progressed. In other words, thecontents to be displayed are changed (determined) according to theprogress of the virtual game.

However, in this embodiment, when the virtual game has not been playedfor a relatively long period of time (for example, a week or longer),the operating instruction is displayed regardless of the progress of thegame. This is because there are cases that the player has possiblyforgotten how to operate (how to input). In other words, the contents tobe displayed may be changed according to the player's condition.

FIG. 9 shows one example of a memory map of the main memory (42 e, 46)shown in FIG. 2. As shown in FIG. 9, the main memory (42 e, 46) includesa program memory area 500 and a data memory area 502. The program memoryarea 500 stores a game program, and the game program is configured by amain process program 500 a, an image generation program 500 b, an imagedisplay program 500 c, an operating instruction display program 500 d,and such.

The main process program 500 a is a program for processing a mainroutine of the virtual game of this embodiment (see FIG. 11). The imagegeneration program 500 b is a program for generating game image datathat corresponds to the game screen (100 and such) displayed on themonitor 34 using an image data 502 b that is later described. The imagedisplay program 500 c is a program for outputting the game image datagenerated according to the image generation program 500 b to the monitor34 and displaying the corresponding game screen (100 and such). Theoperating instruction display program 500 d is a program for controllingthe display of the operating instruction in the display area 104 in thegame screen 100 (see FIG. 12 to FIG. 16).

Although illustration is omitted, the game program includes such as anaudio output program and a backup program. The audio output program is aprogram for generating sound needed for the game, such as voices orimitative voices of the player object and the enemy objects, soundeffects, and music (BGM), and outputting the generated sound through thespeaker 34 a. The backup program is a program for saving the game data(502 c, 502 d, 502 f, 502 g, and such) stored in the data memory area502, the flash memory 44, or an external memory card.

The data memory area 502 is provided with an input data buffer 502 a.Further, the image data 502 b, a progress data 502 c, a display leveldata 502 d, an operating instruction data 502 e, a total play time data502 f, a last play end time/date data 502 g, and a success rate data 502h are stored in the data memory area 502. Moreover, an operation timecounter 502 i, a display time timer 502 j, an operation waiting timetimer 502 k, a display level increase flag 502 m, a forcible show 1 flag502 n, a forcible show 2 flag 502 p, and a forcible hide flag 502 q areprovided for the data memory area 502.

The input data buffer 502 a stores input data from the controller 22according to the chronological order (temporary memory). The input datastored in the input data buffer 502 a is deleted (cleared) after used inthe game process.

As described above, the image data 502 b is polygon data or texturaldata for generating the game image data. The progress data 502 c is dataregarding the progress of the virtual game. Here, in this embodiment,the progress of the virtual game means information regarding a stage (orphase, or chapter) that the player has cleared, information of types ofattach (such as magic) that the player object has learned, informationof items that the player object owns, information of the level(experience) of the player object and such.

The display level data 502 d is numeric data regarding display levels ofthe operating instructions. The operating instruction data 502 e is dataregarding specific contents of the operating instructions. For example,as shown in FIG. 10, the operating instruction data 502 e is data of atable in which the contents of the operating instructions correspondingto the display levels are described. As shown in FIG. 10, in thisembodiment, the display levels are set as 1, 2, 3, 4, 5, . . . , and n,and an operating instruction (1), an operating instruction (2), anoperating instruction (3), an operating instruction (4), an operatinginstruction (5), . . . , and an operating instruction (n) are describedrespectively corresponding to display levels 1-n. However, the operatinginstructions (1) to (n) are actually the data regarding the images andtext as shown in FIG. 8(A) and FIG. 8(B). Further, although a detailedexplanation is not given, as the display level increases, the content ofthe operating instruction become advanced.

Referring again to FIG. 9, the total play time data 502 f is dataregarding total time period for which the virtual game has been played.Although a detailed explanation is not given, every time the virtualgame is played, starting date and time and ending date and time of theplay are obtained from the ROM/RTC 48, and a play time period iscalculated based on a difference between these date and time, and theplay time period is added to the total play time when the play ends. Thelast play end time/date data 502 g is data regarding the date and timewhen the last play of the virtual game has ended. As described above,the ending date and time of the play is obtained from the ROM/RTC 48.

The success rate data 502 h is numeric data regarding a success rate ofan input of the letters and such, that is, an operation, by the player.In this embodiment, the success rate is a value obtained by dividing anumber of the correct operations in the same display level by a numberof the all operations (a total number of times of operation). Therefore,when the display level is updated (increased, in this embodiment), thesuccess rate is reset.

The operation time counter 502 i is an up counter for counting a numberof a predetermined operation. The predetermined operation is anoperation that is explained for the first time in the operatinginstruction of the current display level (new operation, in thisembodiment). The display time timer 502 j is a timer for counting a timeperiod during which the operating instruction is displayed. Further, theoperation waiting time timer 502 k is a timer for counting a time periodof waiting for an input (operation) by the player.

The display level increase flag 502 m is a flag for judging whether ornot the display level of the operating instruction has been increased,and configured by a single-bit register. When the display level increaseflag 502 m is on, the register is set with a data value “1”. On theother hand, when the display level increase flag 502 m is off, theregister is set with a data value “0”. In this embodiment, when thedisplay level is increased, the display level increase flag 502 m ismade on. Further, when the number of the predetermined operation reachesa given number of times or more, in other words, when a count value ofthe operation time counter 502 i reaches a given value or more, thedisplay level increase flag 502 m is made off.

The forcible show 1 flag 502 n is a flag for judging whether or not,when a given period of time (for example, a week) or longer has lapsedsince the last play, the operating instruction is set to be forciblyshown, and configured by a single-bit register. When the forcible show 1flag 502 n is on, the register is set with a data value “1”. On theother hand, when the forcible show 1 flag 502 n is off, the register isset with a data value “0”. In this embodiment, when the given period oftime or longer has lapsed since the last play, and when the operatinginstruction is set to be forcibly shown regardless of the game level,the forcible show 1 flag 502 n is made on. Further, when the virtualgame is started, the forcible show 1 flag 502 n is made off.

The forcible show 2 flag 502 p is a flag for judging whether or not theoperating instruction is set to be forcibly shown when there is nooperation (input) for a given period of time (in this embodiment, 10seconds) or longer since the game screen 100 (operation screen) has beendisplayed, and configured by a single-bit register. When the forcibleshow 2 flag 502 p is made on, the register is set with a data value “1”.On the other hand, when the forcible show 2 flag 502 p is off, theregister is set with a data value “0”. In this embodiment, when theplayer inputs the letters and such, and when there is no input for thegiven period of time (for example, 10 seconds) or longer since theoperation screen was displayed, the forcible show 2 flag 502 p is madeon. Further, by making the forcible show 2 flag 502 p on, when the givenperiod of time (for example, 2 seconds) has lapsed since the operatinginstruction is forcibly displayed, the forcible show 2 flag 502 p ismade off.

The forcible hide flag 502 q is a flag for judging whether or not theoperating instruction is forcibly hidden, and configured by a single-bitregister. When the forcible hide flag 502 q is on, the register is setwith a data value “1”. On the other hand, when the forcible hide flag502 q is off, the register is set with a data value “0”. In thisembodiment, when the number of the predetermined operation reaches thegiven number of times, or when the given period of time (for example, 2seconds) has lapsed since the operating instruction is forcibly shown,the forcible hide flag 502 q is made on. Further, when it is set todisplay the operating instruction, the forcible hide flag 502 q is madeoff.

Although illustration is omitted, other data such as sound data is alsostored in the data memory area 502. In addition, other counters (timers)and other flags necessary for the game process are set.

FIG. 11 is a flowchart showing an entire process of the CPU 40 shown inFIG. 2. As shown in FIG. 11, when the CPU 40 starts the entire process,the CPU 40 executes an initialization process in a step S1. Here, theCPU 40 clears the input data buffer 502 a, loads the each of pieces ofdata 502 b to 502 h, resets the counter 502 i or the timers 502 j and502 k, or makes the flags 502 m to 502 q off.

In a subsequent step S3, it is determined whether there is an input ornot. Here, whether the input data for a current frame is stored in theinput data buffer 502 a or not is determined. If “NO” in the step S3,that is, there is no input, the process directly proceeds to a step S9.On the other hand, If “YES” in the step S3, that is, there is an input,the game process corresponding to the input is executed in a step S5,the game data is updated in a step S7, and then the process proceeds tothe step S9.

Although a detailed explanation is not given, in the game process of thestep S5, according to the input (operation) by the player, a position ofthe player object in a three-dimensional virtual space is updated, theplayer object is caused to carry out an arbitrary action, or therecognition process of the letters and such is performed when the playerhas inputted the letters and such. Further, in the game process,according to the game program, a position a non-player object such as anenemy object is updated, or the non-player object is caused to carry outan arbitrary action, without depending on the player's operation.

Further, in the step S7, by executing the game process in the step S5,the progress data 502 c and the display level data 502 d included in thegame data are updated as needed.

In the step S9, an image generation process is executed. Specifically,the CPU 40 generates the game image data for displaying the game screen(such as 100). Although not shown in the drawing, when displaying thegame screen 100 (operation screen) as shown in FIG. 8(A) or FIG. 8(B),the operating instructions are shown or hidden according to theshow/hide setting of the operating instructions in the control processof displaying the operating instruction (see FIG. 12 to FIG. 16) asdescribed later.

Although illustration is omitted, as the display area 104 is notdisplayed in the game screen 100 when the operating instruction ishidden, it is possible to make the draw area 102 larger. In other words,the display area of the monitor 34 can be effectively used.

In a subsequent step S11, the image display process is executed.Specifically, the CPU 40 outputs the game image data generated in thestep S9 to the monitor 34. In a subsequent step S13, whether the gamehas been finished or not is determined. Specifically, the CPU 40determines if the virtual game has been determined to be finished due togame clear or game over, or if the virtual game has been determined tobe finished according to the player's instruction.

If “NO” in the step S13, that is, if the game has not been finished, theprocess directly returns to the step S3. On the other hand, If “YES” inthe step S13, that is, if the game has been finished, the entire processis terminated.

It should be noted that, although illustration is omitted, when an eventsuch as the player's instruction or when the game finish occurs, thegame data (502 c, 502 d, 502 f, 502 g, and such) is stored (saved) inthe flash memory 44 or the memory card. At this time, the total playtime data 502 f and the last play end time/date data 502 g are updated.

FIG. 12 to FIG. 16 are flowcharts showing the control process ofdisplaying the operating instruction. The control process of displayingthe operating instruction is started at timing when the operatinginstruction is displayed. However, in the virtual game of thisembodiment, the timing when the operating instruction is displayed meanswhen the offense turn for the player object comes. However, the timingwhen the operating instruction is displayed is not necessarily limitedto such an example, and, in a different virtual game, can be timing ofthe level-up of the player object (learning of a predetermined skill oran increase of the experience), when a new operation becomes availableby obtaining a predetermined item, or simply when there is no playerinput for the given period of time.

As shown in FIG. 12, when the CPU 40 starts the control process ofdisplaying the operating instruction, the CPU 40 determines whether ornot to finish in a step S31. In other words, the CPU 40 determineswhether or not to finish the display control of the operatinginstruction. In this embodiment, it is determined to finish the displaycontrol of the operating instruction when the player inputs the lettersand such to erase the game screen 100 shown in FIG. 8(A) or FIG. 8(B),that is, when the game screen 100 is updated to a different game screen(in this embodiment, mainly the game screen of the attack scene of theplayer object).

If “YES” in the step S31, that is, if determined to finish, the controlprocess of displaying the operating instruction is finished. On theother hand, if “NO” in the step S31, that is, if determined not tofinish, it is determined if the forcible show 1 flag 502 n is on in astep S33. In other words, the CPU 40 determines whether the given periodof time or longer has lapsed since the last play, and whether theoperating instruction is set to be forcibly shown.

If “YES” in the step S33, that is, if the forcible show 1 flag 502 n ison, the process directly proceeds to a step S41. On the other hand, if“NO” in the step S33, that is, if the forcible show 1 flag 502 n is off,it is determined whether or not the given period of time or longer haslapsed since the last play in a step S35. In other words, the CPU 40compares the last play finish time and date indicated by the last playend time/date data 502 g with the current time and date, and determineswhether or not the given period of time (for example, a week) or longerhas lapsed. However, the CPU 40 obtains the current time and date fromthe ROM/RTC 48, similarly to the play start time and date and the playfinish time and date.

If “NO” in the step S35, that is, if the given period of time or longerhas not lapsed since the last play, the process directly proceeds to thestep S41. On the other hand, if “YES” in the step S35, that is, if thegiven period of time or longer has lapsed since the last play, theoperating instruction for the current display level is set to be shownin a step S37, the forcible show 1 flag 502 n is made on in a step S39,and then the process proceeds to a step S45. However, in the step S37,the CPU 40 sets to show the content of the operating instructioncorresponding to the display level indicated by the display level data502 d. The same applies to the following.

It should be noted that, while the operating instruction is set to beshown when it has not played for a certain length of time periodregardless of the game level in this embodiment, it is possible to setthe operating instruction to be shown by decreasing the display level,for example. This is because, in such a case, it is considered that adetrimental effect in the play can be prevented from occurring even ifthe player's operation level has been decreased. It is considered thatthe degree of decrease in the display level can be determined in astepwise manner based on the length of the time period that has lapsedsince the last play, for example.

Referring again to FIG. 12, in the step S41, it is determined whether ornot the game level is a predetermined level or above. In thisembodiment, the CPU 40 determines whether or not the game level is thepredetermined level or above based on the game progress (a number ofcleared stages, chapters, or phases) indicated by the progress data 502c. For example, when even a single stage has not been cleared yet (whenplaying the first stage, first chapter, or first phase), it isdetermined that the game level is under the predetermined level, andwhen one or more stages have been cleared, it is determined that thegame level is the predetermined level or above. Alternatively, it ispossible to determine whether or not the game level is the predeterminedlevel or above based on the total play time of the virtual gameindicated by the total play time data 502 f. For example, it isdetermined that the game level is under the predetermined level when thetotal play time is shorter than the given period of time (2 hours), andit is determined that the game level is the predetermined level or abovewhen the total play time is the given period of time or longer.Alternatively, it is possible to determine the game level consideringboth the number of the cleared stages and the total play time.

If “NO” in the step S41, that is, if the game level is under thepredetermined level, in a step S43, the operating instruction (1) forthe display level 1 (basic level) is set to be shown, and the processreturns to the step S31. On the other hand, if “YES” in the step S41,that is, if the game level is the predetermined level or above, theprocess directly proceeds to the step S45 shown in FIG. 13.

In the step S45 shown in FIG. 13, it is determined whether or not theforcible hide flag 502 q is on. If “YES” in the step S45, that is, ifthe forcible hide flag 502 q is on, the process directly proceeds to astep S49. On the other hand, if “NO” in the step S45, that is, if theforcible hide flag 502 q is off, the operating instruction for thecurrent display level is set to be shown in a step S47, and then theprocess proceeds to the step S49.

In the step S49, it is determined if the new operation becomesnecessary. Here, the CPU 40 determines whether or not a continuousattack or a special attack has been learned referring to the progress ofthe game (here, the types of attack that the player object has learned)indicated by the progress data 502 c. In other words, the CPU 40determines whether or not the new operation such as the continuousoperation or the operation that is carried out in combination has becomenecessary.

If “YES” in the step S49, that is, if the new operation has becomenecessary, the process directly proceeds to a step S55. On the otherhand, if “NO” in the step S49, that is, if the new operation has notbecome necessary, it is determined whether or not the success rate is acertain value or greater in a step S51. If “YES” in the step S51, thatis, if the success rate is the certain value or greater, the processproceeds to the step S55. On the other hand, if “NO” in the step S51,that is, if the success rate smaller than the certain value, it isdetermined whether or not operation time is shorter than the givenperiod of time in a step S53. If “NO” in the step S53, that is, if theoperation time is the given period of time or longer, the processdirectly proceeds to a step S67 shown in FIG. 14. On the other hand, if“YES” in the step S53, that is, if the operation time is shorter thanthe given period of time, the process proceeds to the step S55.

It should be noted that, in this embodiment, a degree of the player'sproficiency in operation (operation level) is detected by carrying outthe determination process such as the step S51 or the step S53. In thisembodiment, the degree of the player's proficiency in operation isdetermined to be high, when one of the conditions of the success ratebeing the certain value or greater or the operation time being shorterthan the given period of time is satisfied. However, it is possible todetermine that the degree of the player's proficiency in operation ishigh when both of these conditions are satisfied.

Further, while, in this embodiment, it is determined whether or not thesuccess rate is the certain value or greater in the step S51 regardlessof the total number of times of operation, the process of the step S51is carried out when the total number of operations is a certain value(for example, 20) or greater in practice, because carrying out a correctoperation when the total number of times of operation is small makes thesuccess rate higher.

Referring again to FIG. 13, in the step S55, the success rate iscleared. In other words, the CPU 40 resets the success rate data 502 h.In a step S57, the display level is increased by one step. In otherwords, the CPU 40 increases the display level indicated by the displaylevel data 502 d by one step, and updates the display level data 502 d.Then, in a step S59 shown in FIG. 14, the operating instruction for thecurrent display level is set to be shown, and a number of times ofoperation is reset in a step S61. In other words, the count value of theoperation time counter 502 i is set to be 0. In a subsequent step S63,the display level increase flag 502 m is made on, the forcible hide flag502 q is made off in a step S65, and the process proceeds to the stepS67.

In the step S67, it is determined whether or not the display levelincrease flag 502 m is on. Here, the CPU 40 determines whether or not ithas not been long since the display level becomes the current displaylevel. This is for displaying the operating instruction corresponding tothe display level after the change until the player is used to the newoperation procedure after the display level changes. If “NO” in the stepS67, that is, if the display level increase flag 502 m is off, theprocess directly proceeds to a step S77 shown in FIG. 15. On the otherhand, if “YES” in the step S67, that is, if the display level increaseflag 502 m is on, it is determined whether or not the number of times ofoperation is over the predetermined time in a step S69. Here, the CPU 40determines whether or not the count value of the operation time counter502 i is over a certain value (for example, 20).

If “NO” in the step S69, that is, if the number of times of operation isunder the predetermined number of times, it is determined that theplayer is not used to the new operation procedure, and the processdirectly proceeds to the step S77. On the other hand, if “YES” in thestep S69, that is, if the number of times of operation is over thepredetermined number of times, it is determined that the player is usedto the new operation procedure, and the operating instruction is set tobe hidden in a step S71, the forcible hide flag 502 q is made on in astep S73, the display level increase flag 502 m is made off in a stepS75, and then the process proceeds to the step S77.

As shown in FIG. 15, in the step S77, it is determined whether or notthere is an input. This determination process is the same as the processcarried out in the step S3 as described above. If “NO” in the step S77,that is, if there is no input, the process directly proceeds to a stepS87 shown in FIG. 16. On the other hand, if “YES” in the step S77, thatis, if there is an input, the operation time is obtained in a step S79.Although a detailed explanation is not given, when the CPU 40 displaysthe game screen 100 (operation screen) as shown in FIG. 8(A) and FIG.8(B), the CPU 40 starts the input waiting time timer 502 k, and whenthere is an input, that is, if “YES” in the step S77, the input waitingtime timer 502 k is stopped and a time period during which there is noinput, i.e. operation time (a period of time taken for the operation) ismeasured. While, in this embodiment, the time period from the operationscreen is displayed until an input is started is obtained as theoperation time, the time period from the operation screen is displayeduntil an input is finished (the letters and such are recognized) can beobtained as the operation time. In such a case, the input waiting timetimer 502 k is stopped when the letters and such are recognized.

In a subsequent a step S81, it is determined whether or not theoperation is correct. Specifically, the CPU 40 determines whether or notthe letters and such inputted by the player, that is, the recognizedletters and such match the letters and such displayed in the displayarea 106. If “NO” in the step S81, that is, if the operation is notcorrect, the process directly proceeds to the step S85. On the otherhand, if “YES” in the step S81, that is, if the operation is correct, anumber of times of operation for the operation of this time is added by1 in a step S83, and the process proceeds to the step S85. In otherwords, in the step S83, the CPU 40 adds 1 to the count value of theoperation time counter 502 i.

In the step S85, the success rate of the operation is updated, and theprocess proceeds to the step S87. In the step S85, the CPU 40 adds 1 tothe total number of times of operation. Then, the CPU 40 calculates thesuccess rate by dividing the number of times of the correct operations(the count value of the operation time counter 502 i) by the totalnumber of times of operation. However, if it is determined to be “NO” inthe step S81, the number of times of the correct operations is notadded.

As shown in FIG. 16, in the step S87, it is determined whether or notthe forcible show 2 flag 502 p is on. If “NO” in the step S87, that is,if the forcible show 2 flag 502 p is off, it is determined whether ornot an input has not been made for 10 seconds or longer in a step S89.Specifically, the CPU 40 determines whether or not the count value ofthe input waiting time timer 502 k is 10 seconds or longer. If “NO” inthe step S89, that is, if the time period during which no input has beenmade is shorter than 10 seconds, the process directly returns to thestep S31 shown in FIG. 12. On the other hand, if “YES” in the step S89,that is, if no input has been made for 10 seconds or longer, theoperating instruction for the current display level is set to be shownin a step S91, the forcible show 2 flag 502 p is made on in a step S93,the forcible hide flag 502 q is made off in a step S95, and then theprocess returns to the step S31.

Further, if “YES” in the step S87, that is, if the forcible show 2 flag502 p is on, it is determined whether or not 2 seconds have passed sincethe operating instruction is displayed in a step S97. Although adetailed explanation is not given, when the operating instruction isdisplayed in the game screen 100 (explanation screen) according to theentire process after it is determined to be “YES” in the step S89, thedisplay time timer 502 j is started. In the step S97, it is determinedwhether or not a count value of the display time timer 502 j is over 2seconds.

If “NO” in the step S97, that is, if 2 seconds has not passed since theoperating instruction is displayed, the process directly returns to thestep S31. On the other hand, if “YES” in the step S97, that is, if 2seconds has passed since the operating instruction is displayed, theoperating instruction is set to be hidden in a step S99, the forciblehide flag 502 q is made on in a step S101, the forcible show 2 flag 502p is made off in a S103, and then the process returns to the step S31.

According to this embodiment, as the operating instructions of differentcontents are displayed at least according to the progress of the game,the operating instruction that is necessary can be presented whenneeded.

It should be noted, while, in this embodiment, the display level isincreased when the success rate of the operation is the certain value orgreater, the display level can be decreased when the success rate of theoperation is low. Alternatively, the display level can be decreased whenthe operation is not correct.

Further, while, in this embodiment, as the operating instruction isforcibly shown when there is no input over the given period of time inthe case in which the operating instruction is hidden, the operatinginstruction can be set to be forcibly shown when highly advancedoperating instructions are displayed. For example, the highly advancedoperating instruction represents the operating instruction regarding thecontent that is essential for the progress of the game, for example,including the operating instruction necessary to clear the stage that isbeing played or the operating instruction necessary to defeat the bossof the enemy object.

Further, while the operation level is judged based on the operation timeor the success rate in this embodiment, it is not necessary to limit tothese examples. For example, the operation level can be judged based onan aesthetic feature of the letters and such drawn by the player.Further, the operation level can be judged based on all of theseelements.

Moreover, while this embodiment explains only about the game systemprovided with the game apparatus and the monitor separately, it ispossible to apply for a game apparatus integrally provided with amonitor, for example, such as a portable game apparatus, a computer(including a PDA) having a game function, and a portable phone having agame function, and an arcade game machine.

Although the present invention has been described and illustrated indetail, it is clearly understood that the same is by way of illustrationand example only and is not to be taken by way of limitation, the spiritand scope of the present invention being limited only by the terms ofthe appended claims.

What is claimed is:
 1. A non-transitory storage medium storing a gameprogram for a game apparatus that is provided with an operatinginstruction data storage device for storing operating instruction datafor displaying an operating instruction for a virtual game on a displaydevice, and that outputs a game screen of said virtual game to saiddisplay device, said game program makes a computer of said gameapparatus to perform functionality comprising: storing game dataincluding at least data relating to progress of said virtual game in astorage medium; determining whether or not it is time to display saidoperating instruction on said display device; determining, when it isdetermined to be the time to display said operating instruction, whetheror not to display said operating instruction based on the game datastored in said game data storage medium; and outputting, when it isdetermined to display said operating instruction, the operatinginstruction data corresponding to the operating instruction to saiddisplay device, wherein when a time period from a last play to a currentplay of said virtual game is over a predetermined time period, saidoperating instruction is displayed regardless of the game data stored insaid game data storage device.
 2. The non-transitory storage mediumstoring a game program according to claim 1, wherein said progress ofthe virtual game includes a number of game stages that have beencleared.
 3. The non-transitory storage medium storing a game programaccording to claim 1, wherein said progress of the virtual game includestotal play time of said virtual game.
 4. The non-transitory storagemedium storing a game program according to claim 1, wherein a pluralityof contents for a single type of operating instruction that aredifferent according to an operation level of a player are stored, saidgame program further makes said computer perform functionalitycomprising detecting an operation by said player, and determining theoperation level of said player based on the detected operation, andoutputting the operating instruction data for said operating instructionof a content according to the determined operation level.
 5. Thenon-transitory storage medium storing a game program according to claim4, wherein said operation level is a success rate of said operation. 6.The non-transitory storage medium storing a game program according toclaim 4, wherein said operation level is a time period taken for saidoperation.
 7. The non-transitory storage medium storing a game programaccording to claim 1, wherein when a new type of operation becomesavailable in said virtual game, said game program determines that it istime to display an operating instruction for the new operation on saiddisplay device.
 8. A non-transitory storage medium storing a gameprogram for a game apparatus that is provided with an operatinginstruction data storage device for storing operating instruction datafor displaying an operating instruction for a virtual game on a displaydevice, and that outputs a game screen of said virtual game to saiddisplay device, said game program makes a computer of said gameapparatus to perform functionality comprising: storing game dataincluding, (i) at least data relating to progress of said virtual gameand (ii) a plurality of contents for a single type of operatinginstruction that are different according to an operation level of aplayer, in a storage medium; determining whether or not it is time todisplay said operating instruction on said display device; determining,when it is determined to be the time to display said operatinginstruction, whether or not to display said operating instruction basedon the game data stored in said game data storage medium; detecting anoperation by said player, and determining the operation level of saidplayer based on the detected operation; and outputting, when it isdetermined to display said operating instruction, the operatinginstruction data corresponding to the operating instruction of a contentto said display device according to the determined operation level,wherein when said operating instruction is determined to be notdisplayed, said game program further makes said computer executemeasuring a time period during which no operation by the player has beendetected, and when the time period measured is over a given period oftime, the operating instruction data that corresponds to said operatinginstruction that has been determined not to be displayed is output.
 9. Agame apparatus comprising an operating instruction data storage devicefor storing operating instruction data for displaying an operatinginstruction for a virtual game on a display device, and that outputs agame screen of said virtual game to said display device, the apparatusconfigured to: store game data including at least data relating toprogress of said virtual game in the storage medium; determine whetheror not it is time to display said operating instruction on said displaydevice; determine, when it is determined to be the time to display saidoperating instruction, whether or not to display said operatinginstruction based on the stored game data; and output, when it isdetermined to display said operating instruction, operating instructiondata corresponding to the operating instruction to said display device,wherein when a time period from a last play to a current play of saidvirtual game is over a predetermined time period, said operatinginstruction is displayed regardless of the game data stored in said gamedata storage device.
 10. The game apparatus according to claim 9,wherein whether or not to display said operating instruction isdetermined based on a combination of an experience level based on theprogress of said virtual game and on an overall time period of play ofthe virtual game.
 11. A game controlling method for a game apparatushaving one or more processors and that is provided with an operatinginstruction data storage device for storing operating instruction datafor displaying an operating instruction for a virtual game on a displaydevice and a game data storage device that stores game data including atleast data relating to progress of said virtual game in a storagemedium, and that outputs a game screen of said virtual game to saiddisplay device, the method comprising: determining, via the one or moreprocessors, whether or not it is time to display said operatinginstruction on said display device; determining, when it is determinedto be the time to display said operating instruction, whether or not todisplay said operating instruction based on the game data stored in saidgame data storage device; and outputting, when it is determined todisplay said operating instruction, operating instruction datacorresponding to the operating instruction to said display device,wherein when a time period from a last play to a current play of saidvirtual game is over a predetermined time period, said operatinginstruction is displayed regardless of the game data stored in said gamedata storage device.
 12. The game controlling method according to claim11, wherein whether or not to display said operating instruction isdetermined based on a combination of an experience level based on theprogress of said virtual game and on an overall time period of play ofthe virtual game.
 13. A game system, comprising: a display deviceconfigured to display image data; and a game apparatus coupled to thedisplay device and that is provided with an operating instruction datastorage device for storing operating instruction data for displaying anoperating instruction for a virtual game on the display device, and thatoutputs a game screen of said virtual game to said display device, theapparatus configured to: store game data including at least datarelating to progress of said virtual game in the storage medium,determine whether or not it is time to display said operatinginstruction on said display device, determine, when it is determined tobe the time to display said operating instruction, whether or not todisplay said operating instruction based on the stored game data, andoutput, when it is determined to display said operating instruction,operating instruction data corresponding to the operating instruction tosaid display device, wherein when a time period from a last play to acurrent play of said virtual game is over a predetermined time period,said operating instruction is displayed regardless of the game datastored in said game data storage device.
 14. The game system accordingto claim 13, wherein whether or not to display said operatinginstruction is determined based on a combination of an experience levelbased on the progress of said virtual game and on an overall time periodof play of the virtual game.